<!DOCTYPE html>
<html lang="zh_CN" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>医院药品管理系统</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" th:href="@{/layui/css/layui.css}" media="all">

    <style>
        html, body {width: 100%; height: 100%; overflow: hidden}
        body {background: #1E9FFF;}
        body:after {content:''; background-repeat:no-repeat; background-size:cover; filter:blur(3px); position:absolute; top:0; left:0; right:0; bottom:0; z-index:-1;}
        .layui-container {width: 100%; height: 100%; overflow: hidden}
        .admin-login-background {width:360px; height:300px; position:absolute; left:50%; top:40%; margin-left:-180px; margin-top:-100px;}
        .logo-title {text-align:center; letter-spacing:2px; padding:14px 0;}
        .logo-title h1 {color:#1E9FFF; font-size:25px; font-weight:bold;}
        .login-form {background-color:#fff; border:1px solid #fff; border-radius:3px; padding:14px 20px; box-shadow:0 0 8px #eeeeee;}
        .login-form .layui-form-item {position:relative;}
        .login-form .layui-form-item label {position:absolute; left:1px; top:1px; width:38px; line-height:36px; text-align:center; color:#d2d2d2;}
        .login-form .layui-form-item input {padding-left:36px;}
        .captcha {width:60%; display:inline-block;}
        .captcha-img {display:inline-block; width:34%; float:right;}
        .captcha-img img {height:34px; border:1px solid #e6e6e6; width:100%;}
        #captcha {cursor: pointer;}
        .error-msg {color: red; text-align: center; margin-bottom: 10px;}
        .register-forgot-buttons {display: flex; justify-content: space-between; margin-bottom: 10px;}
        .register-forgot-buttons .layui-btn {width: 48%;}
    </style>
</head>
<body>
<div class="layui-container">
    <div class="admin-login-background">
        <div class="layui-form login-form">
            <form class="layui-form" action="/login" method="post">
                <div class="layui-form-item logo-title">
                    <h1>药品管理系统登录</h1>
                </div>
                <div class="error-msg" th:text="${msg}"></div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-username" for="username"></label>
                    <input type="text" name="username" required lay-verify="required" placeholder="用户名" autocomplete="off" class="layui-input">
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-password" for="password"></label>
                    <input type="password" name="password" required lay-verify="required" placeholder="密码" autocomplete="off" class="layui-input">
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-vercode" for="captcha"></label>
                    <input type="text" name="captcha" lay-verify="required|captcha" placeholder="图形验证码" autocomplete="off" class="layui-input verification captcha">
                    <div class="captcha-img">
                        <img th:src="@{/captcha}" id="captcha" width="130px" height="48px" />
                    </div>
                </div>
                <div class="layui-form-item">
                    <input type="checkbox" name="rememberMe" value="true" lay-skin="primary" title="记住密码">
                </div>
                <div class="register-forgot-buttons">
                    <button type="button" class="layui-btn layui-btn-primary" id="registerBtn">注册</button>
                    <button type="button" class="layui-btn layui-btn-primary" id="forgotPasswordBtn">忘记密码</button>
                </div>
                <div class="layui-form-item">
                    <button id="btn-login" class="layui-btn layui-btn layui-btn-normal layui-btn-fluid" lay-submit="" lay-filter="login">登录</button>
                </div>
            </form>
        </div>
    </div>
</div>

<script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js"></script>
<script th:src="@{/layui/layui.all.js}" charset="utf-8"></script>
<script th:src="@{/lib/jq-module/jquery.particleground.min.js}" charset="utf-8"></script>
<script th:inline="javascript">
    $(document).ready(function () {
        var ctxPath = /*[[@{/}]]*/ '/';

        // 更新验证码
        $("#captcha").on('click', function () {
            $(this).attr("src", ctxPath + 'captcha?date=' + new Date().getTime());
        });

        layui.use(['form', 'layer'], function () {
            var form = layui.form,
                layer = layui.layer;

            // 登录过期时，跳出 iframe 框架
            if (top.location !== self.location) top.location = self.location;

            // 注册按钮
            $('#registerBtn').on('click', function () {
                window.location.href = ctxPath + "register";
            });

            // 忘记密码按钮
            $('#forgotPasswordBtn').on('click', function () {
                window.location.href = ctxPath + "forgotPassword";
            });

            // 登录操作
            form.on('submit(login)', function (data) {
                $("#btn-login").attr("disabled", "disabled").addClass("layui-btn-disabled");

                var formData = data.field;
                if (formData.username === '') {
                    layer.msg('用户名不能为空');
                    $("#btn-login").removeAttr("disabled").removeClass("layui-btn-disabled");
                    return false;
                }
                if (formData.password === '') {
                    layer.msg('密码不能为空');
                    $("#btn-login").removeAttr("disabled").removeClass("layui-btn-disabled");
                    return false;
                }
                if (formData.captcha === '') {
                    layer.msg('验证码不能为空');
                    $("#btn-login").removeAttr("disabled").removeClass("layui-btn-disabled");
                    return false;
                }

                // 异步登录请求
                var url = ctxPath + "login";
                $.post(url, formData, function (result) {
                    if (result.code === "1") {
                        layer.msg(result.msg, {icon: result.icon, anim: result.anim}, function () {
                            window.location.href = ctxPath + "index";  // 登录成功后跳转到后台主页
                        });
                    } else {
                        layer.msg(result.msg, {icon: result.icon, anim: result.anim});
                        $("#btn-login").removeAttr("disabled").removeClass("layui-btn-disabled");
                    }
                }).fail(function() {
                    layer.msg('请求失败，请稍后再试');
                    $("#btn-login").removeAttr("disabled").removeClass("layui-btn-disabled");
                });

                return false;
            });

            // 粒子线条背景
            $('.layui-container').particleground({
                dotColor:'#7ec7fd',
                lineColor:'#7ec7fd'
            });
        });
    });
</script>
</body>
</html>
